package comtacti.native;
/**
 * NativeBinding :	Entry AutoBuild type for any type of interaction with native libraries
 *  
 *  Its behaviour will greatly depend on the flag associated to it. There are specific AutoBuild
 *  types for each of those behaviours, but it provides the facility of easily changing its build type, 
 *  depending on compiler flags. Here are the options:
 *  
 *  @:cffi(libName:String [, type=options.CffiLibType]) - @see comtacti.native.AutoCffi
 *  	Generates the load code for the lib defined, and if libName is not defined will generate the cffi
 *  	source code to be built.
 *  @:cffiLoad(libName:String [, type=options.CffiLibType]) - @see comtacti.native.AutoCffi with @:cffiLoad()
 *  	Same as @:cffi but forces just to generate the load code (no source code building) - useful if
 *  	the lib name differs from the haxelib name (no automatic define)
 *  	Both cffi and cffiLoad only accept static function and have strict policy of the code contained
 *  	inside its blocks that may be used: Only __cpp__(string) expressions, with no extra parameters.
 *  
 *  @:static - (only available for cpp) @see comtacti.native.AutoStatic
 *  	Will generate a static binding by using the facilities provided by InlinedHxcpp. Will not pass
 *  	through the cffi, and mixing haxe code with __cpp__ is allowed just like in InlinedHxcpp
 *  @:dllImport - TBD (TODO)
 * 
 * @langversion		HaXe 2
 * @targets			cpp, neko
 * @author			Caue Waneck:<a href="mailto">waneck@gmail.com</a>
 * @since			2011-10-10
 */
@:autoBuild(comtacti.native.internal.build.Build()) class NativeBinding 
{
	
}